Signal processing apparatus

ABSTRACT

The signal processing apparatus inserts the header information in a frame to probably be the reproduction start point by including: the first and the second coding units that code an input signal per frame; the first header inserting unit that inserts the SBR header indicating management information of the coded signal represented by a sequence of frames, in each frame at a regular interval within the coded signal; the control unit that determines a frame in which the SBR header is inserted, independent of the frames in which the first header inserting unit inserts the SBR header; and the second header inserting unit that singly inserts the SBR header in the frame determined by the control unit.

TECHNICAL FIELD

The present invention relates to a signal processing apparatus thatperforms compression coding on an audio signal by dividing the audiosignal into layers. For example, the present invention relates to asignal processing apparatus which performs compression coding on asignal in a lower frequency band, using an Advanced Audio Coding (AAC)method in a main layer, and which performs compression coding on asignal in a higher frequency band, using a Spectral Band Replication(SBR) method in a sub-layer as in the MPEG AAC-SBR method.

BACKGROUND ART

In recent years, audio players that use semiconductor memories asrecording media have been developed. In many cases, encoders performcompression coding on music contents stored in advance in recordingmedia, such as a CD, and the music contents are stored in semiconductormemories (CD ripping). Then, decoders reproduce the compressed audiocontents stored in the semiconductor memories so that users of the audioplayers can enjoy music.

In these cases, the encoders need to have the following characteristicsin view of the user's convenience, such as: (1) a lower bit rate incompression coding; and (2) faster processing speed in compressioncoding. The lower bit rate in compression coding allows even aninexpensive recording medium having a smaller recording capacity torecord data for a long period of time. Furthermore, the fasterprocessing speed in compression coding makes it possible to code manytunes within a shorter period of time.

In recent years, the MPEG AAC-SBR method (ISO/IEC14496-3) has beenstandardized as a coding method characterized by using a lower bit rate.FIG. 1 illustrates the basic principle of compression coding accordingto the AAC-SBR method. According to the AAC-SBR method, compressioncoding is performed on a signal in a lower frequency band, using the AACmethod in a main layer (left side in FIG. 1), and compression coding isperformed on a signal in a higher frequency band, using the SBR methodin a sub-layer (right side in FIG. 1). Here, the SBR method is a methodof replicating, modifying, and shaping a signal in a lower band. Thus,the SBR part in FIG. 1 can be coded at a very low bit rate.

FIG. 2 illustrates the basic structure of a bit stream according to theAAC-SBR method. An AAC part (AAC data) and an SBR part (SBR data) arestored in each of audio frames divided at predetermined time intervals,and header information (AAC header and SBR header) is placed at the headof each of the audio frames. Here, as long as an SBR header that is aheader of the SBR part is inserted once every several frames, the SBRheader does not necessarily have to be present in each audio frame inview of reduction in a bit rate. The MPEG standard suggests insertion ofan SBR header 2 times per second. The reason of such regular insertionis as follows. When the aforementioned methods are used in broadcasting,for example, input in a decoder does not always start from the head of abit stream. Under such a condition, when an SBR header is inserted onlyin a head of a bit stream but SBR headers are not inserted at regularintervals, the SBR part cannot be reproduced to the end of the bitstream. Similarly, reproduction of a bit stream stored in advance doesnot start from the head of the bit stream. For example, in the case ofreproduction from a 40-second time point, the SBR part cannot bereproduced without regular insertion of the SBR headers.

In order to accelerate the compression coding, a great many techniquesthat cause encoders to perform faster processing have been developed.Since these techniques are out of the scope of the present invention,the description is omitted here. On the other hand, several processingmethods have been devised in view of the acceleration of the compressioncoding in an encode system. FIG. 3 illustrates a system configurationfor processing music signals in a CD at faster speed.

First, a music signal stored in a CD is transmitted to an input pulsecode modulation (PCM) buffer. Next, a signal processor, that is adigital signal processor (DSP) obtains the music signal from the inputPCM buffer, and performs compression coding on the music signal. Theresulting bit stream obtained by the compression coding is storedthrough an output bit stream buffer in an external memory, such as a SDmemory card. The series of operations are controlled by a microcomputercontroller. For example, when music signals that are stored in the CDand that correspond to 10 tunes are coded, the music signals aresequentially inputted into the input PCM buffer without any intervalbetween the tunes. Accordingly, the signal processor sequentially codesthe music signals without detecting an interval between the tunes. Suchprocessing is performed when the signal processor sequentially codes onelong tune corresponding to 10 tunes in a length of time. The resultingoutput bit stream coded and stored in the output bit stream buffer isdivided, according to the tune length information originally stored inthe CD (minutes and seconds), into tunes, such as into the first trackand the second track (See Patent Reference 1). Such processing isperformed because coding several tunes at one time enables the signalprocessor to perform processing faster than coding tunes one-by-one.

Patent Reference 1: Japanese Unexamined Patent Application PublicationNo. 2004-101638

SUMMARY OF THE INVENTION Problems that Invention is to Solve

However, there is a problem that the SBR header is not always insertedin each head of the tunes when the AAC-SBR method is used as a codingmethod in the aforementioned conventional case.

FIG. 4 explanatorily illustrates a problem occurring when music signalsstored in a CD are sequentially coded using the AAC-SBR method, withoutdetecting an interval between the tunes. (a) in FIG. 4 illustrates that1 CD stores 4 tunes. (b) in FIG. 4 illustrates an enlarged view thatexemplifies a structure of a bit stream between the first tune and thesecond tune, as one example. As described above, the signal processorperforms compression coding on inputted music signals without detectingan interval between tunes. Thus, when the SBR headers are only insertedat regular intervals, the SBR headers are not always inserted in thehead of the tunes. Obviously, when the SBR header is inserted in everyframe, such problem will not occur. However, such insertion is out ofthe scope of the AAC-SBR method that intends to lower a bit rate as muchas possible because the bit rate increases according to the count of theSBR headers.

However, the SBR header includes description of information indicatingapplication of SBR processing to signals in frequency bands. Thus, inthe case of no insertion of the SBR header in the head of a tune, theSBR part cannot be processed until the SBR header is first detected fromthe head of the tunes. As a result, there occurs a problem that signalscorresponding to a reproduced sound are in a state as illustrated in (c)in FIG. 4.

(c) in FIG. 4 illustrates spectra of reproduced signals when the SBRheader is not inserted in the head of a tune. Here, the horizontal axisshows time, the vertical axis shows a frequency, and the length of eachline shows a width of a frequency band of a reproduced signal. In otherwords, the longer line shows that the reproduced signal is reproduced ina wider frequency band. Furthermore, the shorter line shows that thereproduced signal is reproduced in a narrower frequency band. As obviousfrom the illustration, when the SBR header is not inserted in the headof a tune, there is a problem that the SBR part each indicated with adotted oval figure cannot be processed until detecting the SBR headerfrom the head of the tune, and that a signal in a higher frequency bandcannot be reproduced.

The present invention has been conceived in view of such conventionalproblems. Furthermore, the present invention has an object of providinga signal processing apparatus that generates a bit stream capable ofreproducing a high quality sound signal from a start time point of thereproduction, even when reproducing, from some midpoint, the bit streamobtained by coding music signals sequentially inputted without aninterval between the tunes.

Means to Solve the Problems

In order to solve the problems, the signal processing apparatusaccording to the present invention includes: a coding unit configured tocode an input signal on a per frame basis; a first header inserting unitconfigured to insert a header in each frame at a regular interval withina coded signal, the coded signal being generated through coding theinput signal by the coding unit and being represented by a sequence offrames, and the header indicating management information of the codedsignal; a control unit configured to determine a frame in which theheader is to be inserted, independent of the frames in which the firstheader inserting unit inserts the header; and a second header insertingunit configured to singly insert the header in the frame determined bythe control unit. With this configuration, the signal processingapparatus can insert a header in a frame as necessary while preventing abit rate from increasing due to insertion of a header in each frame.

The first header inserting unit may insert, from the frame in which thesecond header inserting unit has inserted the header, the header in eachframe at the regular interval, upon insertion of the header by thesecond header inserting unit. With this configuration, even whenreproduction is started from a part in which the second header insertingunit does not insert a header, coded signals represented by the headersinserted at regular intervals by the first inserting unit can bereproduced.

Furthermore, the first header inserting unit may include a counter thatupdates a value in each frame, and insert the header when the valueindicated by the counter reaches a predetermined preset value, and thesecond header inserting unit may insert the header in the framedetermined by the control unit, using the first header inserting unit byforcibly rewriting the value indicated by the counter to the presetvalue in the frame determined by the control unit. With thisconfiguration, the first and second header inserting units can beimplemented by less use of computational resources.

Furthermore, the control unit may determine a frame in which the headeris inserted according to a state of the input signal. With thisconfiguration, the timing when the header is singly inserted can bedetermined according to a state of the input signal.

The control unit may determine a frame in which the header is insertedaccording to a control signal provided from an outside of the signalprocessing apparatus. With this configuration, the timing when theheader is singly inserted can be determined according to the controlsignal provided from the outside.

Furthermore, the coding unit may sequentially code music signals oftunes included in the input signal, and the control unit may determineinsertion of the header in a frame within the coded signal, the framecorresponding to a change point between the tunes included in the inputsignal. With this configuration, the header can be inserted in a changepoint between tunes when music signals of the tunes to be sequentiallyinputted are coded.

The control unit may determine, within the coded signal, insertion ofthe header in a frame in which the input signal has an amplitude smallerthan a threshold. With this configuration, the header can be inserted ina frame in which the amplitude of the input signal is smaller, in otherwords, in a change point between tunes or in a change point of detailsof the input signal.

The control unit may determine insertion of the header in a frame inwhich an amplitude of the input signal changes from being smaller than athreshold to being not less than the threshold. With this configuration,the header can be inserted in a frame in which the amplitude of theinput signal changes from being smaller to being larger, in other words,in a frame corresponding to the head of a tune.

Furthermore, the control unit may determine insertion of the header in aframe in which the input signal has an amplitude not less than athreshold, after the input signal has the amplitude smaller than thethreshold for a predetermined period of time. With this configuration,the header can be inserted in a frame in which the amplitude of theinput signal becomes a larger amplitude after the amplitude is smallerfor a predetermined period of time, in other words, in a framecorresponding to the head of a tune.

The control unit may include a melody variation detecting unitconfigured to detect variation in a melody of the input signal, and thecontrol unit may determine insertion of the header in a frame within thecoded signal, the frame corresponding to a position detected by themelody variation detecting unit as a position indicating that the melodyof the input signal varies. With this configuration, the header can beinserted in a frame corresponding to a part in which the melody varies.

The control unit may determine insertion of the header in a frame withinthe coded signal, the frame corresponding to a head of a “sabi (the mostattractive)” part in the input signal, and the “sabi” part beingdetected by the melody variation detecting unit. With thisconfiguration, the header can be inserted in the “sabi” part in thetune.

Furthermore, the first header inserting unit and the second headerinserting unit may insert a header indicating management information ofauxiliary data for expanding a frequency band of the coded signal forreproduction. With this configuration, the header indicating themanagement information of auxiliary data for expanding a frequency bandof the coded signal for reproduction can be inserted.

The first header inserting unit and the second header inserting unit mayinsert an SBR header according to an MPEG AAC-SBR method, and the firstheader inserting unit and the second header inserting unit may insert aheader indicating management information of auxiliary data for enlargingchannels of the coded signal for reproduction.

The first header inserting unit and the second header inserting unit mayinsert the header which: indicates the management information ofauxiliary data for enlarging channels of the coded signal forreproduction; and includes coding mode information indicating a codingmethod for coding Inter-channel Intensity Differences.

The first header inserting unit and the second header inserting unit mayinsert the header which: indicates the management information ofauxiliary data for enlarging channels of the coded signal forreproduction; and includes coding mode information indicating a codingmethod for coding Inter-channel Coherence.

The coding unit may include an amplitude detecting unit configured todetect an amplitude of the input signal, and the control unit maydetermine a frame in which the header is inserted according to theamplitude of the input signal, the amplitude being detected by thecoding unit. With this configuration, the control unit can determine inwhich frame the header is inserted with less use of computationalresources.

The header inserted by the first header inserting unit may have a valuesame as a value of the header inserted by the second header insertingunit. With this configuration, an area in which a value of the header isstored can be reduced.

Furthermore, the present invention can be achieved not only as anapparatus but also: as a method having the processing units of theapparatus as steps; as a program causing a computer to execute suchsteps; as a computer-readable recording medium on which the program isrecorded, such as a CD-ROM; as information indicating the program; andas data or signals. Such a program, information, data, and signals maybe distributed via a communication network, such as the Internet.

Effects of the Invention

The signal processing apparatus according to the present invention caninsert a header in a frame as necessary while preventing a bit rate fromincreasing due to insertion of a header in each frame.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 illustrates the basic principle of compression coding accordingto the AAC-SBR method;

FIG. 2 illustrates the basic structure of a bit stream according to theAAC-SBR method;

FIG. 3 illustrates a system configuration for processing music signalsin a CD at faster speed;

(a) in FIG. 4 illustrates that 1 CD stores 4 tunes, (b) in FIG. 4illustrates an enlarged view that exemplifies a structure of a bitstream between the first tune and the second tune, as one example, and(c) in FIG. 4 illustrates spectra of reproduced signals when the SBRheader is not inserted in the head of a tune;

FIG. 5 illustrates a configuration of the signal processing apparatus1000 according to Embodiment 1;

FIG. 6 shows details of sbr_header( )” of the MPEG standard;

(a) in FIG. 7 schematically illustrates a part of a coded signal havingthe SBR headers inserted by the first header inserting unit at regularintervals, and (b) in FIG. 7 schematically illustrates a part of a codedsignal having the SBR header singly inserted in a beginning part of thenext tune by the second header inserting unit when the current tune ischanged to the next one;

FIG. 8 is a waveform diagram illustrating an example of a change pointbetween tunes in a stereo input PCM signal;

FIG. 9 illustrates a configuration of the signal processing apparatus2000 that determines, according to a signal generated in the arithmeticprocesses in the first coding unit, a part in which the SBR header isinserted;

FIG. 10 illustrates a configuration of the signal processing apparatus3000 that determines, according to a signal generated in the arithmeticprocesses in the second coding unit, a part in which the SBR header isinserted;

FIG. 11 illustrates a configuration of the signal processing apparatus4000 that determines, according to a control signal provided from theoutside, a part in which the SBR header is inserted;

FIG. 12 is a flow chart showing the operations of the first headerinserting unit; and

FIG. 13 is a flow chart showing the operations of the first and secondheader inserting units.

NUMERICAL REFERENCES

-   100 First coding unit-   101 Second coding unit-   102 Header information storing unit-   103 First header inserting unit-   104 Second header inserting unit-   105, 205, 305, 405 Control unit-   106 Multiplexing unit-   110 Header inserting unit-   1000, 2000, 3000, 4000 Signal processing apparatus

DETAILED DESCRIPTION OF THE INVENTION Embodiment 1

A signal processing apparatus according to Embodiment 1 of the presentinvention will be hereinafter described with reference to drawings.

FIG. 5 illustrates a configuration of a signal processing apparatus 1000according to Embodiment 1. The signal processing apparatus 1000 is asignal processing apparatus that generates a coded signal including afirst coded signal and a second coded signal. The first coded signal isa coded signal obtained by coding an audio signal in a narrow band usingthe MPEG AAC method. On the other hand, the second coded signal is acoded signal obtained by coding a signal for expanding a frequency bandof a signal obtained by decoding the first signal, and is a coded signalin an SBR part according to the MPEG AAC-SBR method.

In FIG. 5, the signal processing apparatus 1000 includes a first codingunit 100, a second coding unit 101, a header information storing unit102, a header inserting unit 110, a control unit 105, and a multiplexingunit 106. The control unit 105 detects a change point between tunes fromchange in an amplitude of an input PCM signal, and a second headerinserting unit 104 inserts an SBR header in a head of a next tune.Furthermore, the header inserting unit 110 includes a first headerinserting unit 103 and the second header inserting unit 104. The firstcoding unit 100 codes an input PCM signal in a lower frequency band. Thesecond coding unit 101 codes an input PCM signal in a higher frequencyband. The input PCM signal is, for example, music data obtained byplayback of one CD. The header information storing unit 102 storesmanagement information of the second coded signal generated by thesecond coding unit 101. The header inserting unit 110 is an example ofthe first header inserting unit and the second header inserting unitthat insert management information of auxiliary data for expanding afrequency band of the coded signal for reproduction, in other words, thefirst header inserting unit and the second header inserting unit thatinsert an SBR header using the MPEG AAC-SBR method and that insert theSBR header that is the management information of the second coded signalstored by the header information storing unit 102, in the head of thesecond coded signal. The first header inserting unit 103 inserts aheader indicating the management information in a coded signal, at aregular interval, for example, in every 500 milliseconds. Here, theintervals of inserting the headers in the coded signal by the firstheader inserting unit 103 are not necessarily 500 milliseconds, but maybe 300 milliseconds, or different intervals. The second header insertingunit 104 singly inserts a header in a frame determined by the controlunit 105. The control unit 105 determines in which frame of the codedsignal the SBR header is inserted, using the second header insertingunit 104. The multiplexing unit 106 multiplexes the first coded signalgenerated by the first coding unit 100, the second coded signalgenerated by the second coding unit 101, an AAC header, and, if any, theSBR header inserted by one of the first header inserting unit 103 andthe second header inserting unit 104.

The operations of the signal processing apparatus 1000 having theaforementioned configuration will be hereinafter described withreference to the drawings.

First, the first coding unit 100 codes an input PCM signal in a lowerfrequency band, for example, a signal in a band not more than afrequency of 8 kHz. Although the first coding unit 100 codes a signal ina lower frequency band using the MPEG AAC method in Embodiment 1, thecoding method is not limited to the AAC method but other methods may beused. Furthermore, although the first coding unit 100 codes a signallimited to 8 kHz of the frequency band at most in Embodiment 1, otherfrequency bands may be used.

The second coding unit 101 codes a signal for expanding a frequency bandof a signal obtained by decoding a coded signal generated by the firstcoding unit 100. Although Embodiment 1 aims at processing an SBR partusing the MPEG AAC-SBR method, the method is not limited to the MPEGAAC-SBR method, but other methods may be used. The first coding unit 100and the second coding unit 101 are examples of the coding unit thatcodes an input signal on a per frame basis. Furthermore, the firstcoding unit 100 and the second coding unit 101 are examples of thecoding unit that sequentially codes music signals of tunes included inthe input signal.

The header information storing unit 102 is a memory that storesinformation to be described in the SBR header according to the AAC-SBRmethod. FIG. 6 is an excerpt from “Table4.1-Syntax of sbr_header( )” ofthe MPEG standard (ISO/IEC 14496-3:2005(E)) (Non-patent Reference 1).Since ISO/IEC 14496-3:2005(E) details this table, the description isomitted herein. To be short, the SBR header includes quantizationresolution of a coded signal in the SBR processing and informationindicating that the SBR processing is applied to a signal in whichfrequency band. Such information is normally set according to a samplingfrequency of an input signal and a bit rate of an output bit stream,independent of momentary characteristics of an input PCM signal. Thus,the information has only to be stored in the header information storingunit 102 in advance. In other words, the information set in theaforementioned manner proves, as an example, that the header inserted bythe first header inserting unit 103 has a value same as a value of theheader inserted by the second header inserting unit 104.

The control unit 105 is an example of a control unit that determines aframe in which the header is inserted, independent of a frame in whichthe first header inserting unit 103 is inserted, and is an example of acontrol unit that determines a frame in which the header is insertedaccording to a state of an input signal. In other words, the controlunit 105 controls when and in which frame the SBR header is inserted bychecking the change in the amplitude of the input PCM signal. (a) inFIG. 7 schematically illustrates a part of a coded signal having the SBRheaders inserted by the first header inserting unit 103 at regularintervals. (b) in FIG. 7 schematically illustrates a part of a codedsignal having the SBR header singly inserted in a beginning part of thenext tune by the second header inserting unit 104 when the current tuneis changed to the next one. Here, the first header inserting unit 103 isan example of the first header inserting unit that inserts a headerindicating management information of a coded signal generated throughcoding by the coding unit, in each frame at a regular interval withinthe coded signal that is represented by a sequence of frames, andinserts header information at predetermined frame periods. The secondheader inserting unit 104 is an example of the second header insertingunit that singly inserts the header in a frame determined by the controlunit, and that singly inserts header information. Furthermore, thecontrol unit 105 is an example of the control unit that determinesinsertion of the header in a frame within the coded signal. The framecorresponds to a change point between the tunes in the input signal. (a)in FIG. 7 illustrates that the SBR headers are inserted at regularintervals of every 500 milliseconds by the first header inserting unit103. In contrast, (b) in FIG. 7 illustrates that the SBR header isinserted after 200 milliseconds that have not reached 500 millisecondswith respect to the most immediate SBR header. This indicates that thecontrol unit 105 detects a change point between the tunes after 200milliseconds from the most immediate SBR header, and then, the secondheader inserting unit 104 inserts the SBR header after 200 millisecondsfrom the most immediate SBR header. Furthermore, after the second headerinserting unit 104 inserts the SBR header, the first header insertingunit 103 inserts the SBR headers at regular intervals of every 500milliseconds from the SBR header inserted by the second header insertingunit 104 as a start point.

Here, when the coded signal generated by the signal processing apparatus1000 is reproduced, the control unit 105 controls forcible insertion ofthe SBR header in a frame that is likely to be a start point of thereproduction, and controls insertion of the SBR headers at predeterminedintervals in frames that are not likely to be start points of thereproduction. For example, FIG. 8 is a waveform diagram illustrating anexample of a change point between tunes in a stereo input PCM signal.Since a silent part of a tune is assumed to be an interval betweentunes, the SBR header is inserted in a frame having such a silent part.The control unit 105 is an example of the control unit that determines,within the coded signal, insertion of the header in a frame in which theinput signal has an amplitude smaller than a threshold. Since a partchanged from silence to sound, such as the oval figures in FIG. 8 isassumed to be a beginning of a tune, the SBR header is more preferablyinserted in a frame having such a part. As illustrated in FIG. 8, tunesare recorded in a CD so that the human ear can perceive an intervalbetween the tunes and that a silent part continues between the tunes fora predetermined period of time. Accordingly, in the case of insertingthe SBR header in a head frame of a tune, after a silent part continuesfor a predetermined period of time, the SBR header is inserted under thecontrol of the control unit 105. Here, the control unit 105 is anexample of the control unit that determines insertion of the header in aframe in which an amplitude of the input signal changes from beingsmaller than a threshold to being not less than the threshold.Furthermore, a part in which the melody varies or a “sabi (the mostattractive)” part in a tune is highly likely to be indicated as a starttime point of the reproduction according to the preference of alistener. In a frame having such a part, the SBR header is inserted.Here, conventional methods may be used for detecting a part where themelody varies or a “sabi” part in a tune (for example, see JapaneseUnexamined Patent Application Publication No. 2001-283569 (PatentReference 2)). A melody variation detecting unit that is not illustratedand is included in the control unit 105 is an example of a melodyvariation detecting unit that detects variation in a melody of the inputsignal, in other words, the melody variation detecting unit that detectsa part in which the melody varies or a “sabi” part in a tune, using theconventional methods. Furthermore, the control unit 105 is an example ofthe control unit that determines insertion of the header in a framewithin the coded signal. The frame corresponds to a position detected bythe melody variation detecting unit as a position indicating that themelody of the input signal varies, and to a head of the “sabi” part thatis detected by the melody variation detecting unit in the input signal.

Here, when the control unit 105 detects a time point of inserting theSBR header according to a state of an input signal as described above,information may be directly obtained from the input PCM signal. However,the information may be detected from a signal generated in thearithmetic processes in the first coding unit 100 and the second codingunit 101. For example, the first coding unit 100 performs an AACencoding operation in Embodiment 1. Since information “global_gain”indicating the magnitude of a signal is generated in the AAC encodingoperation, whether the amplitude of the input PCM signal is larger orsmaller can be detected with reference to the information. Thus, thecontrol unit 105 may detect an interval between tunes according to suchinformation. Here, the first coding unit 100 is an example of the codingunit including an amplitude detecting unit that detects the amplitude ofan input signal. FIG. 9 illustrates a configuration of a signalprocessing apparatus 2000 that determines, according to a signalgenerated in the arithmetic processes in the first coding unit 100, apart in which the SBR header is inserted. FIG. 9 shows the configurationof the signal processing apparatus 2000 that detects whether theamplitude of the input PCM signal is larger or smaller according to asignal generated by the first coding unit 100 and that detects aninterval between tunes. Since the constituent elements included in bothFIGS. 5 and 9 are previously described, the elements are labeled withthe same reference numerals and the description is omitted hereinafter.The signal processing apparatus 2000 has the same constituent elementswith those in FIG. 5, other than a control unit 205. The signalprocessing apparatus 2000 differs in the control unit 205 that detects achange point between the tunes according to global_gain that is a signalprovided from the first coding unit 100. The control unit 205 is anexample of the control unit that determines a frame in which the headeris inserted according to the amplitude of an input signal. Here, thecoding unit detects the amplitude.

Alternatively, the second coding unit 101 performs the SBR encodingusing the AAC-SBR method, and in the SBR encoding, information thatenables estimation of an amplitude of an input signal can be generatedin Embodiment 1. With reference to the information, whether theamplitude of the input signal is larger or smaller can be detected, andan interval between tunes may be detected according to a result of thedetection. FIG. 10 illustrates a configuration of a signal processingapparatus 3000 that determines, according to a signal generated in thearithmetic processes in the second coding unit 101, a part in which theSBR header is inserted. FIG. 10 shows the configuration of the signalprocessing apparatus 3000 that detects whether the amplitude of theinput PCM signal is larger or smaller according to a signal generated inthe arithmetic processes in the second coding unit 101 and that detectsan interval between tunes. Since the constituent elements included inboth FIGS. 5 and 10 are previously described, the elements are labeledwith the same reference numerals and the description is omittedhereinafter. The signal processing apparatus 3000 has the sameconstituent elements with that of FIG. 5, other than a control unit 305that detects whether the amplitude of the input PCM signal is larger orsmaller according to a signal provided from the second coding unit 101and detects a change point between the tunes.

Furthermore, information indicating an interval between tunes andinformation indicating a position of a “sabi” part in a tune may beobtained from an outside of the signal processing apparatus according tothe present invention. FIG. 11 illustrates a configuration of a signalprocessing apparatus 4000 that determines, according to a control signalprovided from the outside, a part in which the SBR header is inserted.FIG. 11 illustrates a configuration of the signal processing apparatus4000 that detects, according to a control signal provided from theoutside, a part in which the SBR header is inserted. Since theconstituent elements included in both FIGS. 5 and 11 are previouslydescribed, the elements are labeled with the same reference numerals andthe description is omitted hereinafter. Although the signal processingapparatus 4000 has the same constituent elements with those in FIG. 5,other than a control unit 405 that includes a path for obtaining fromthe outside a control signal indicating information that indicates aninterval between tunes and information that indicates a position of a“sabi” part in a tune. The control unit 405 is an example of the controlunit that determines a frame in which the header is inserted accordingto a control signal provided from the outside.

Hereinafter, operations of the first header inserting unit 103 and thesecond header inserting unit 104 will be described in detail withreference to flow charts.

FIG. 12 is a flow chart showing the operations of the first headerinserting unit 103. The first header inserting unit 103 is an example ofthe first header inserting unit that includes a counter that updates avalue in each frame, and inserts the header when a value indicated bythe counter reaches a predetermined preset value. First, the firstheader inserting unit 103 sets an interval between which headers areinserted, to a header insertion interval register that is notillustrated and included in the first header inserting unit 103 (S1).Here, the setting is that the SBR header is inserted once every frameshaving a count A. Here, A is a predetermined natural number. Next, thefirst header inserting unit 103 resets a frame counter that updates avalue in each frame (S2). Next, the first header inserting unit 103detects whether or not the frame counter is 0 (S3). When the framecounter is 0, the SBR header is inserted in the frame in Step S4. Then,the first header inserting unit 103 increments the frame counter by 1per frame. Furthermore, when a value of the frame counter corresponds tothe frame interval A that is set in Step S1 in the beginning, the valueof the frame counter is reset (S5). Unless the value of the framecounter is 0 in Step S3, the processing moves onto Step S5. In Step S5,when the value of the frame counter is incremented by 1 and the value ofthe frame counter corresponds to the frame interval A that is set inStep S1 as described above, the value of the frame counter is reset.Thereby, the first header inserting unit 103 implements insertion ofheaders at regular intervals.

FIG. 13 is a flow chart showing the operations of the first headerinserting unit 103 and the second header inserting unit 104 whenfunctions of the second header inserting unit 104 are added to thesignal processing apparatus. FIG. 13 differs from FIG. 12 in that avalue indicated by a frame counter is forcibly reset according to aninstruction from the control unit 105 in Steps S13 and S14 in order toenable the operations of the second header inserting unit 104, althoughSteps S11 and S12 in FIG. 13 are respectively the same as Steps S1 andS2 in FIG. 12. Here, the second header inserting unit 104 is an exampleof the second header inserting unit that inserts the header in a framedetermined by the control unit using the first header inserting unit, byforcibly rewriting the value indicated by the counter to a preset valuein the frame determined by the control unit. With this step, a headercan singly be inserted. In other words, after the value indicated by theframe counter is reset in Step S12, the second header inserting unit 104judges whether or not the control unit 105 instructs insertion of aheader (S13), and resets the value indicated by the frame counter whenthe control unit 105 instructs the insertion (S14). Unless the controlunit 105 instructs insertion of a header in S13, the processing movesonto Step S15 without any processing. Steps S15, S16, and S17 in FIG. 13are the same as Steps S3, and S4, and S5 in FIG. 12, respectively.However, FIG. 13 differs from FIG. 12 in that the process after Step S17returns to the process before Step S13. Thereby, the second headerinserting unit 104 judges whether or not the control unit 105 instructsinsertion of a header in each frame (S13), and resets the valueindicated by the frame counter when the control unit 105 instructsinsertion of the header (S14). In other words, the second headerinserting unit 104 can insert the SBR header, independent of insertionof the headers at regular intervals by the first header inserting unit103. Furthermore, the first header inserting unit 103 is an example ofthe first header inserting unit that inserts the header in each frame ata regular interval, from the frame in which the second header insertingunit 104 has inserted the header, upon insertion of the header by thesecond header inserting unit 104. After the second header inserting unit104 inserts the SBR header and when the control unit 105 does notinstruct insertion of a header, the first header inserting unit 103inserts the SBR headers in each frame having the value that is indicatedby the frame counter and that corresponds to the frame interval A.

Finally, the multiplexing unit 106 multiplexes a coded signal generatedby the first coding unit 100, a coded signal generated by the secondcoding unit 101, an AAC header, and, if any, the SBR header inserted byone of the first header inserting unit 103 and the second headerinserting unit 104.

Thus, the signal processing apparatus according to the present inventioncan insert header information necessary for reproducing a coded signalgenerated by the signal processing apparatus, in a start point of thereproduction. The signal processing apparatus includes: the first codingunit 100 that codes a signal in a frequency band lower than that of aninput PCM signal; the second coding unit 101 that codes a signal in afrequency band higher than that of an input PCM signal; the headerinformation storing unit 102 that stores management information of thecoded signal generated by the second coding unit 101; the first headerinserting unit 103 that inserts headers indicating the managementinformation, at regular intervals; the second header inserting unit 104that singly inserts the header; the control unit that determines whichheader inserting unit is used; and the multiplexing unit 106 thatmultiplexes the coded signal generated by the first coding unit 100, thecoded signal generated by the second coding unit 101, and, if any, theheader inserted by one of the first header inserting unit 103 and thesecond header inserting unit 104.

The limitation described in Embodiment 1 is that the first coding unit100 is a coding unit using the AAC method out of the AAC-SBR method, thesecond coding unit 101 is a coding unit using the SBR method out of theAAC-SBR method, and the header to be inserted is the SBR header.However, the present invention is not limited to these. For example, thetechniques of the present invention may be used for Enh-AAC-SBR method(ISO/IEC14496-3:2001/FDAM2:2004(E) (Non-patent Reference 2)) that is anextended standard of the AAC-SBR method. In this case, the first codingunit 100 is a coding unit using the AAC method, the second coding unit101 is a coding unit using the SBR method and the parametric stereotechnique, and the header to be inserted is ps_header. Here, ps_headeris a header indicating management information of coded information forenlarging channels of the coded signal for reproduction, for example,coding mode information indicating a coding method for codingInter-channel Intensity Differences and for coding Inter-channelCoherence. In this case, the first header inserting unit 103 and thesecond header inserting unit 104 are examples of the first headerinserting unit and the second header inserting unit that insert a headerindicating management information of auxiliary data for enlargingchannels of the coded signal for reproduction. Furthermore, the firstheader inserting unit 103 and the second header inserting unit 104 areexamples of the first header inserting unit and the second headerinserting unit that insert a header indicating (i) managementinformation of auxiliary data for enlarging channels of the coded signalfor reproduction and (ii) indicating coding mode information thatindicates a coding method for coding the Inter-channel IntensityDifferences.

In recent years, MPEG Surround (MPS) that performs compression coding oninformation indicating a difference between such channels is beingstandardized. In such a method, the management information for codinginformation includes management information that does not have tonecessarily be inserted in all frames. In such information, a headerindicating the management information has only to be inserted in a frameto be a start point of the reproduction by a reproducer, using thetechnique of the present invention. For example, an encoder needs todownmix an input multi-channel signal in MPEG Surround (MPS). Here, thedownmix coefficient is information that does not have to necessarily beinserted in all frames.

Furthermore, in recent years, conference systems using digitalcommunication devices have been developed. Thus, a coding method thathas a layer structure that is a premise of the present invention will bepresumably used as an audio transmission method. For example, suchcoding methods include: coding a signal by dividing it into a lowerfrequency band layer and a higher frequency band layer, such as theAAC-SBR method; and coding a downmix signal and a signal obtained byconverting the downmix signal to multi-channels in different layers asin MPS. With use of such coding methods, a transmission method can beappropriately selected according to a situation. For example, when thereis enough transmission capacity in a communication path, all layers of asignal are transmitted. Unless there is such enough transmissioncapacity, the signal is transmitted by erasing several sub-layers of thesignal.

Furthermore, when the first coding unit 100 and the second coding unit101 generate an audio coded signal to be multiplexed onto a broadcastwave, the control unit may detect whether a content corresponding to thebroadcast wave is a television commercial or a television program andinsert the SBR header, a MPS downmix coefficient, or ps_header in aframe that switches to the television program. Here, the control unit isan example of the control unit that includes a broadcast contentdetecting unit that detects whether a content corresponding to abroadcast wave is a television commercial or a television program, andthat determines insertion of the header in a frame that switches fromthe television commercial to the television program.

Similarly, when the first coding unit 100 and the second coding unit 101generate an audio coded signal to be multiplexed onto a broadcast wave,there are cases where audio information to be coded is recorded by amicrophone. For example, such cases include recording voice of a solosinger using a microphone, and recording instrumental accompaniment of aback-up band and voice of background chorus using another microphone.When the voice of the solo singer is recorded after introduction of theback-up band, it is highly likely that the reproduction may start fromaudio information of the singer. Thus, when a state of coding audioinformation obtained by mainly recording instrumental accompaniment of aback-up band and voice of background chorus transitions to a state ofcoding audio information obtained by mainly recording voice of a solosinger, the control unit may detect a frame corresponding to a positionof switching such audio information, by switching a microphone thatrecords the audio information, and may determine insertion of the SBRheader in the detected frame. Here, the control unit is an example ofthe control unit that determines insertion of the header in a positionof switching audio information that is a content of the input signal.

More specifically, the control unit is an example of the control unitthat: (i) detects whether the coding unit codes audio informationobtained by mainly recorded by a first microphone or a second microphonewhen the coding unit codes audio information recorded by at least 2microphones including the first microphone and the second microphone;and (ii) determines insertion of the header in a head frame that isswitched to audio information recorded by the second microphone when thecontrol unit detects a transition from a state where the coding unitcodes audio information recorded by the first microphone to a statewhere the coding unit codes the audio information recorded by the secondmicrophone.

In the aforementioned example, the control unit detects a frame that ishighly likely to be a head frame from which the reproduction starts bymaking a distinction between the microphones that record audioinformation. However, the control unit may detect such a frame by makinga distinction between cameras that record image information, when thefirst coding unit 100 generates an audio coded signal to be multiplexedonto a broadcast wave that broadcasts audio information and when thesecond coding unit 101 generates an image coded signal to be multiplexedonto a broadcast wave that broadcasts the image information. In thiscase, the control unit is an example of the control unit that determinesinsertion of the header in a frame that corresponds to a position of theinput signal when image information is switched, within the codedsignal. More specifically, the control unit is an example of the controlunit that detects whether the image information is recorded by a firstcamera or a second camera when the image information is recorded by atleast 2 cameras including the first camera and second camera, anddetermines insertion of the header in a frame corresponding to aposition in which the control unit detects a transition from a statewhere the image information is recorded by the first camera to a statewhere the image information is recorded by the second camera.

Although management information of sub-layers does not necessarily haveto be transmitted to all frames according to a coding method with alayer structure, as in the AAC-SBR method and MPS, there are cases wherethe management information of sub-layers needs to be singly inserted insome interactive devices predicated on communications in response to arequest from a receiver. Such case holds true for not only an audiocoded signal but also an image coded signal. For example, when aone-to-one teleconference joins an additional site, a decoder of theadditional site needs management information of sub-layers of the audiocoded signal and the image coded signal at a timing when the number ofjoining sites increases. Otherwise, the decoder needs to wait formanagement information to be regularly transmitted. Furthermore, when anerror occurs in a communication path and the decoder cannot normallyreceive a signal, the decoder needs to notify the sender of such a stateand to force the sender to transmit management information. In such acase, the management information can be forcibly inserted by insertingcontrol information from the outside, in the configuration illustratedin FIG. 11 of Embodiment 1.

Furthermore, when prediction coding is performed, in image coding andaudio coding, on a difference between data that has been previouslycoded and data to be coded, upon start of reproduction from somemidpoint of data subject to the prediction coding, the coded image andcoded audio cannot correctly be decoded, because no data that has beenpreviously coded is available. Thus, when it is probable thatreproduction starts from some midpoint of coded data obtained byperforming prediction coding, management information (a reset sign)indicating reset of prediction coding may be inserted in the midpoint,as the BS header (Japanese Unexamined Patent Application Publication No.2006-106475 (Patent Reference 3)). In this case, the first coding unit100 and the second coding unit 101 are examples of the coding unit thatperforms prediction coding on residual information between a frame to becoded and a frame that has been coded before the frame to be coded thatare included in the input signal. Furthermore, the control unit is anexample of the control unit that determines a frame from whichreproduction is highly likely to be started, as a frame in which theheader is inserted, when the coding unit performs prediction coding onan input signal and it is probable that reproduction starts from somemidpoint of the coded signal obtained by performing prediction coding onthe input signal.

Each functional block in the block diagrams (such as FIGS. 5, 9, 10, and11) is representatively embodied as an LSI that is an integratedcircuit. These blocks may be made into separate single chips, or may bemade as a single chip to include part of or all thereof. For example,the functional blocks other than a memory may be made into a separatesingle chip.

Although the LSI is exemplified herein, there are cases where an IC, asystem LSI, a super LSI, or a ultra LSI may be used due to a differencein an integration degree.

Furthermore, the means for integrating circuits is not limited to anLSI, but may be embodied by a dedicated circuit or a general purposeprocessor. It is also acceptable to use a field programmable gate array(FPGA) that is programmable after the LSI has been manufactured, and areconfigurable processor in which connections and settings of circuitcells within the LSI are reconfigurable.

Furthermore, when integrated circuit technology that replaces LSIsappears through progress in the semiconductor technology or otherderived technology, that technology can naturally be used to integratethe functional blocks. Biotechnology is anticipated to be applied to theintegrated circuit technology.

Among the functional blocks, only a unit for storing data to be coded ordecoded may be excluded from integration into a single chip and may beconfigured otherwise.

INDUSTRIAL APPLICABILITY

The signal processing apparatus according to the present inventionrelates to a coding apparatus that generates a coded signal having alayer structure. The signal processing apparatus can appropriatelyinsert header information of sub-layers in a start point of thereproduction by a reproducer, by inserting the header information atregular intervals or singly. As a result, a high quality sound can bereproduced from the start point of the reproduction. For example, thesignal processing apparatus is applicable to sound reproductionequipment according to the AAC-SBR method and MPEG Surround.

The invention claimed is:
 1. A signal processing apparatus, comprising:a processor; and a non-transitory memory having stored thereonexecutable instructions, which when executed by the processor, cause theprocessor to perform: coding an input signal on a per frame basis;inserting a header in each frame at a regular interval within a codedsignal, the coded signal being generated in said coding and beingrepresented by a sequence of frames, and the header indicatingmanagement information of the coded signal; determining a frame in whichthe header is to be inserted, independent of the frames in which theheader is inserted in said inserting; and singly inserting the header inthe frame determined in said determining, wherein the header, which isinserted in said inserting and said singly inserting, indicatesmanagement information of auxiliary data for enlarging channels of thecoded signal for reproduction, and wherein the header, which is insertedin said inserting and said singly inserting, (i) indicates themanagement information of auxiliary data for enlarging channels of thecoded signal for reproduction and (ii) includes coding mode informationindicating a coding method for coding Inter-channel IntensityDifferences.
 2. A signal processing apparatus, comprising: a processor;and a non-transitory memory having stored thereon executableinstructions, which when executed by the processor, cause the processorto perform: coding an input signal on a per frame basis; inserting aheader in each frame at a regular interval within a coded signal, thecoded signal being generated in said coding and being represented by asequence of frames, and the header indicating management information ofthe coded signal; determining a frame in which the header is to beinserted, independent of the frames in which the header is inserted insaid inserting; and singly inserting the header in the frame determinedin said determining, wherein the header, which is inserted in saidinserting and said singly inserting, indicates management information ofauxiliary data for enlarging channels of the coded signal forreproduction, and wherein the header, which is inserted in saidinserting and said singly inserting, (i) indicates the managementinformation of auxiliary data for enlarging channels of the coded signalfor reproduction and (ii) includes coding mode information indicating acoding method for coding Inter-channel Coherence.
 3. A method forprocessing a signal, said method comprising: coding an input signal on aper frame basis; inserting, using a processor, a header in each frame ata regular interval within a coded signal, the coded signal beinggenerated in said coding and being represented by a sequence of frames,and the header indicating management information of the coded signal;determining a frame in which the header is to be inserted, independentof the frames in which the header is inserted in said inserting; andsingly inserting the header in the frame determined in said determining,wherein the header, which is inserted in said inserting and said singlyinserting, indicates management information of auxiliary data forenlarging channels of the coded signal for reproduction, and wherein theheader, which is inserted in said inserting and said singly inserting,(i) indicates the management information of auxiliary data for enlargingchannels of the coded signal for reproduction and (ii) includes codingmode information indicating a coding method for coding Inter-channelIntensity Differences.
 4. A non-transitory computer readable recordingmedium having stored thereon a program, wherein, when executed, saidprogram causes a computer to perform: coding an input signal on a perframe basis; inserting a header in each frame at a regular intervalwithin a coded signal, the coded signal being generated in said codingand being represented by a sequence of frames, and the header indicatingmanagement information of the coded signal; determining a frame in whichthe header is to be inserted, independent of the frames in which theheader is inserted in said inserting; and singly inserting the header inthe frame determined in said determining, wherein the header, which isinserted in said inserting and said singly inserting, indicatesmanagement information of auxiliary data for enlarging channels of thecoded signal for reproduction, and wherein the header, which is insertedin said inserting and said singly inserting, (i) indicates themanagement information of auxiliary data for enlarging channels of thecoded signal for reproduction and (ii) includes coding mode informationindicating a coding method for coding Inter-channel IntensityDifferences.
 5. An integrated circuit, comprising: a processor; and anon-transitory memory having stored thereon executable instructions,which when executed by the processor, cause the processor to perform:coding an input signal on a per frame basis; inserting a header in eachframe at a regular interval within a coded signal, the coded signalbeing generated in said coding and being represented by a sequence offrames, and the header indicating management information of the codedsignal; determining a frame in which the header is to be inserted,independent of the frames in which the header is inserted in saidinserting; and singly inserting the header in the frame determined insaid determining, wherein the header, which is inserted in saidinserting and said singly inserting, indicates management information ofauxiliary data for enlarging channels of the coded signal forreproduction, and wherein the header, which is inserted in saidinserting and said singly inserting, (i) indicates the managementinformation of auxiliary data for enlarging channels of the coded signalfor reproduction and (ii) includes coding mode information indicating acoding method for coding Inter-channel Intensity Differences.
 6. Amethod for processing a signal, said method comprising: coding an inputsignal on a per frame basis; inserting, using a processor, a header ineach frame at a regular interval within a coded signal, the coded signalbeing generated in said coding and being represented by a sequence offrames, and the header indicating management information of the codedsignal; determining a frame in which the header is to be inserted,independent of the frames in which the header is inserted in saidinserting; and singly inserting the header in the frame determined insaid determining, wherein the header, which is inserted in saidinserting and said singly inserting, indicates management information ofauxiliary data for enlarging channels of the coded signal forreproduction, and wherein the header, which is inserted in saidinserting and said singly inserting, (i) indicates the managementinformation of auxiliary data for enlarging channels of the coded signalfor reproduction and (ii) includes coding mode information indicating acoding method for coding Inter-channel Coherence.
 7. A non-transitorycomputer readable recording medium having stored thereon a program,wherein, when executed, said program causes a computer to perform:coding an input signal on a per frame basis; inserting a header in eachframe at a regular interval within a coded signal, the coded signalbeing generated in said coding and being represented by a sequence offrames, and the header indicating management information of the codedsignal; determining a frame in which the header is to be inserted,independent of the frames in which the header is inserted in saidinserting; and singly inserting the header in the frame determined insaid determining, wherein the header, which is inserted in saidinserting and said singly inserting, indicates management information ofauxiliary data for enlarging channels of the coded signal forreproduction, and wherein the header, which is inserted in saidinserting and said singly inserting, (i) indicates the managementinformation of auxiliary data for enlarging channels of the coded signalfor reproduction and (ii) includes coding mode information indicating acoding method for coding Inter-channel Coherence.
 8. An integratedcircuit, comprising: a processor; and a non-transitory memory havingstored thereon executable instructions, which when executed by theprocessor, cause the processor to perform: coding an input signal on aper frame basis; inserting a header in each frame at a regular intervalwithin a coded signal, the coded signal being generated in said codingand being represented by a sequence of frames, and the header indicatingmanagement information of the coded signal; determining a frame in whichthe header is to be inserted, independent of the frames in which theheader is inserted in said inserting; and singly inserting the header inthe frame determined in said determining, wherein the header, which isinserted in said inserting and said singly inserting, indicatesmanagement information of auxiliary data for enlarging channels of thecoded signal for reproduction, and wherein the header, which is insertedin said inserting and said singly inserting, (i) indicates themanagement information of auxiliary data for enlarging channels of thecoded signal for reproduction and (ii) includes coding mode informationindicating a coding method for coding Inter-channel Coherence.